/* ===== 全局变量和基础设置 ===== */
:root,
[data-theme="light"],
[data-theme="dark"] {
    /* 覆盖页面宽度 - 需要保留 !important 因为这是覆盖官方变量 */
    --page-max-width: 86% !important;
}

/* ===== 登录页面背景图片 - 简洁实现 ===== */
body[data-path="login"] {
    background-image: url('/assets/theme/images/beijin.jpg') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed !important;
    background-color: transparent !important;
}

/* 确保登录表单清晰可见 */
.for-login .login-content {
    background-color: rgba(255, 255, 255, 0.9);
}

:root {
    /* 导航宽度 - 需要保留 !important 因为这是覆盖官方变量 */
    --sidebar-width: 180px;
    --left-sidebar-width: 180px;
}

/* ===== 工作区布局样式 ===== */
/* 工作区变四个模块 - 需要保留 !important 因为这是覆盖官方布局 */
@media (min-width: 992px) {
    .ce-block.col-md-4 {
        width: 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
}

/* 工作区导航列表字体大小 - 可以移除 !important */
.widget.links-widget-box .link-item {
    font-size: 15px;
}

/* 工作区列表字体大小加粗标题 */
.widget.links-widget-box .widget-head .widget-label .widget-title {
    font-size: 15px;
}

/* 工作区列表背景色 */
.widget.links-widget-box {
    padding: 28px;
    border: 1.2px solid #a7a7a7;
    background-color: #fafafa;
}

/* 快捷方式小部件背景色 */
.widget.shortcut-widget-box {
    background-color: #f7f7f7;
}

/* ===== 导航栏样式 ===== */
/* 导航背景色 */
.navbar {
    background: #dcdfe1;
}

/* 面包屑导航文字样式 */
.navbar-breadcrumbs a,
#navbar-breadcrumbs a {
    font-size: 16px;
    font-weight: bold;
}

/* ===== 侧边栏样式 ===== */
/* 侧边栏背景色 - 需要保留 !important 因为这是覆盖官方主题色 */
.body-sidebar {
    background: #112d4e !important;
}

/* 导航标题字体大小和字间距 - 需要更具体的选择器 */
.sidebar-item-label {
    font-size: 16px !important;
    color: rgb(227, 227, 227) !important;
    letter-spacing: 0.05em !important;
   
}
/*自检app导航颜色*/
.active-sidebar {
    background: rgb(35 40 47 / 0%) !important;
}
/* 折叠按钮文字颜色 - 需要保留 !important 因为这是覆盖官方主题色 */
.collapse-sidebar-link {
    color: rgb(255, 255, 255) !important;
}

/* 菜单栏图标白色 - 需要保留 !important 因为这是覆盖官方图标颜色 */
.body-sidebar-container.expanded .body-sidebar .sidebar-item-icon svg,
.body-sidebar-container.expanded .body-sidebar .collapse-sidebar-link svg {
    stroke: #efefef !important;
}

/* 菜单栏向下箭头白色 - 需要保留 !important 因为这是覆盖官方图标颜色 */
.body-sidebar-container.expanded .body-sidebar .btn-reset svg,
.body-sidebar-container.expanded .body-sidebar .drop-icon svg,
.body-sidebar-container.expanded .body-sidebar .show-in-edit-mode svg {
    fill: #e9eaec !important;
}

/* 菜单栏展开箭头 - 需要保留 !important 因为这是覆盖官方图标颜色 */
.icon-arrow-right-to-line,
svg.icon use[href="#icon-arrow-right-to-line"] {
    stroke: #ffffff !important;
    fill: #ffffff !important;
}

/* 侧边栏图标样式 */
.sidebar-item-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
}

.sidebar-item-icon svg.icon {
    stroke: #ffffff;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ===== 菜单项样式 ===== */
/* 导航标题高度 */
.body-sidebar-container.expanded .body-sidebar .sidebar-item-container {
    height: auto;
    min-height: 40px;
    display: flex;
    flex-direction: column;
}

/* 标题项样式 */
.body-sidebar-container.expanded .body-sidebar .sidebar-item-container > .standard-sidebar-item {
    height: 40px;
    display: flex;
    align-items: center;
}

/* 子菜单容器样式 */
.body-sidebar-container.expanded .body-sidebar .sidebar-child-item {
    width: 100%;
    margin-top: 2px;
}

/* 子菜单项样式 */
.body-sidebar-container.expanded .body-sidebar .sidebar-child-item .sidebar-item-container {
    min-height: 32px;
    padding-left: 10px;
}

/* 确保子菜单项显示正常 */
.sidebar-child-item.nested-container {
    display: block;
    width: 100%;
}

/* 菜单项悬停样式 - 需要保留 !important 因为这是覆盖官方主题色 */
.standard-sidebar-item:hover {
    background: #8da7c4 !important;
    border-radius: 8px;
}

.app-switcher-dropdown:hover {
    background: #8da7c4 !important;
    border-radius: 8px;
    color: #fff !important;
}

/* ===== App切换器样式 ===== */
/* app logo部分宽度 */
.app-item a {
    width: 168px;
}

/* app展开列表宽度 */
.app-switcher-menu {
    width: 158px;
}

/* app下拉箭头位置 */
.app-switcher-dropdown .standard-sidebar-item {
    gap: 3px;
}

/* ===== 按钮样式 ===== */
/* 主要操作按钮样式 - 需要保留 !important 因为这是覆盖官方主题色 */
.btn-primary.primary-action {
    background-color: #FF9500 !important;
    border-color: #FF9500 !important;
}

.btn-primary.primary-action:hover {
    background-color: #e68600 !important;
    border-color: #e68600 !important;
}

/* 操作列表按钮样式 - 需要保留 !important 因为这是覆盖官方主题色 */
.actions-btn-group .btn-primary {
    background-color: #FF9500 !important;
    border-color: #FF9500 !important;
}

.actions-btn-group .btn-primary:hover {
    background-color: #e68600 !important;
    border-color: #e68600 !important;
}

/* 下拉菜单样式 - 需要保留 !important 因为这是覆盖官方主题色 */
.actions-btn-group .dropdown-menu {
    border: 1px solid #FF9500 !important;
    box-shadow: 0 2px 4px rgba(255, 149, 0, 0.1) !important;
}

.actions-btn-group .dropdown-item:hover {
    background-color: #fff5e6 !important;
    color: #FF9500 !important;
}

.actions-btn-group .grey-link {
    color: #333;
}

.actions-btn-group .grey-link:hover {
    color: #FF9500;
}

/* 统一输入框样式 - 可以移除部分 !important */
.frappe-control .form-control,
.frappe-control input.form-control,
.frappe-control textarea.form-control,
.frappe-control select.form-control,
.frappe-control .control-input-wrapper .form-control {
    width: 100%;
    height: 34px;
    border: 1.5px solid #d8d8d8;
    border-radius: 0px;
    background-color: #f8f8f8;
    box-shadow: none;
    padding: 8px 12px;
    line-height: 18px;
    display: flex;
    align-items: center;
}

/* 统一有默认值字段的显示样式 - 只在输入框隐藏时应用 - 可以移除部分 !important */
.frappe-control .control-input-wrapper .control-input[style*="display: none"] ~ .control-value.like-disabled-input,
.frappe-control .control-input-wrapper .control-input[style*="display:none"] ~ .control-value.like-disabled-input {
    width: 100%;
    height: 34px;
    border: 1.5px solid #d8d8d8;
    border-radius: 0px;
    background-color: #f8f8f8;
    box-shadow: none;
    padding: 8px 12px;
    line-height: 18px;
    display: flex;
    align-items: center;
    color: #333;
    font-size: 14px;
}

/* 扫条码字段扫描图标垂直居中样式 */
/* 确保控件输入容器有相对定位 */
.frappe-control .control-input,
.control-input {
    position: relative !important;
}

/* 扫描按钮容器样式 - 使用多个选择器确保覆盖 - 可以移除部分 !important */
.frappe-control .control-input .link-btn,
.control-input .link-btn,
.link-btn {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    z-index: 10;
    margin: 0;
    padding: 0;
}

/* 扫描按钮样式 - 可以移除部分 !important */
.frappe-control .control-input .link-btn .btn-open,
.control-input .link-btn .btn-open,
.link-btn .btn-open {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 2px;
    margin: 0;
    line-height: 1;
    border: none;
    background: transparent;
}

/* 扫描图标样式 - 可以移除 !important */
.frappe-control .control-input .link-btn .btn-open svg,
.control-input .link-btn .btn-open svg,
.link-btn .btn-open svg {
    width: 14px;
    height: 14px;
    vertical-align: middle;
    display: block;
    margin: auto;
}




/* ===== 导航栏搜索框样式 ===== */
/* 搜索栏容器样式调整 - 需要保留 !important 因为这是覆盖官方主题色 */
/* 作用：设置搜索栏容器的基础样式 */
/* 目标：确保搜索栏在导航栏中的正确显示 */
.search-bar {
    background-color: transparent !important; /* 容器背景透明 */
}

/* 搜索框awesomplete容器样式调整 - 需要保留 !important 因为这是覆盖官方样式 */
/* 作用：设置awesomplete容器的背景和边框 */
/* 目标：为搜索输入框提供白色背景容器 */
.search-bar .awesomplete {
    background-color: #ffffff !important; /* 白色背景 */
    border: 1px solid #d1d5db !important; /* 浅灰色边框 */
    border-radius: 6px !important;        /* 圆角 */
}

/* 搜索框输入字段样式调整 - 需要保留 !important 因为这是覆盖官方样式 */
/* 作用：确保搜索框内的输入字段有白色背景和合适的文字颜色 */
/* 目标：保持搜索框整体的一致性和可读性 */
.search-bar .awesomplete input,
.search-bar input {
    background-color: #ffffff !important; /* 输入框白色背景 */
    color: #374151 !important;             /* 深灰色文字确保可读性 */
    border: none !important;               /* 移除输入框边框，使用外层容器边框 */
}

/* 搜索框占位符文字样式 - 可以移除 !important */
/* 作用：设置占位符文字颜色，确保在白色背景下可见 */
/* 目标：提供良好的用户体验和视觉提示 */
.search-bar .awesomplete input::placeholder,
.search-bar input::placeholder {
    color: #9ca3af; /* 中等灰色占位符文字 */
}

/* 搜索图标样式调整 - 可以移除 !important */
/* 作用：确保搜索图标在白色背景下可见 */
/* 目标：保持搜索功能的视觉一致性 */
.search-bar .search-icon svg {
    stroke: #6b7280; /* 中等灰色图标 */
}

/* ===== 子表圆角取消样式 ===== */
/* 作用：移除文档类型中所有子表的圆角 */
/* 目标：使子表显示为直角矩形，符合设计要求 */

/* 子表容器 - 移除所有圆角 */
.form-grid {
    border-radius: 0 !important;
}

/* 子表头部行 - 移除顶部圆角 */
.grid-heading-row {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* 子表头部行内的网格行 - 移除顶部圆角 */
.grid-heading-row .grid-row {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* 子表头部行内的复选框 - 移除左上角圆角 */
.grid-heading-row .row-check {
    border-top-left-radius: 0 !important;
}

/* 子表头部行内的最后一列 - 移除右上角圆角 */
.grid-heading-row .row .col:last-child {
    border-top-right-radius: 0 !important;
}

/* 子表内的网格行 - 移除所有圆角 */
.grid-body .grid-row {
    border-radius: 0 !important;
}

/* 子表内的网格单元格 - 移除所有圆角 */
.grid-body .grid-static-col,
.grid-body .row-check,
.grid-body .row-index {
    border-radius: 0 !important;
}

/* 子表主体区域 - 移除底部圆角 */
.grid-body {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

/* 列限制达到时的特殊容器 - 移除顶部圆角 */
.column-limit-reached {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* 网格表单容器 - 移除圆角 */
.form-in-grid {
    border-radius: 0 !important;
}

/* 网格行打开状态的表单 - 移除圆角 */
.grid-row-open .form-in-grid {
    border-radius: 0 !important;
}

/* ===== 滚动条样式 - 设置为浅灰色#f5f5f5 ===== */
/* 作用：将页面所有滚动条颜色设置为浅灰色#f5f5f5 */
/* 目标：统一滚动条视觉效果，符合设计要求 */

/* 标准滚动条颜色属性 - 现代浏览器支持 */
* {
    scrollbar-color: #e8e8e8 #f0f0f0 !important; /* 滑块颜色 #f5f5f5，轨道颜色 #f0f0f0 */
}

/* Webkit内核浏览器滚动条样式 - Chrome, Safari, Edge */
::-webkit-scrollbar {
    width: 8px !important;  /* 垂直滚动条宽度 */
    height: 8px !important; /* 水平滚动条高度 */
}

::-webkit-scrollbar-track {
    background: #f0f0f0 !important; /* 滚动条轨道背景色 */
}

::-webkit-scrollbar-thumb {
    background-color: #e8e6e6 !important; /* 滚动条滑块颜色 */
    border-radius: 4px !important; /* 滑块圆角 */
    border: 1px solid #e0e0e0 !important; /* 滑块边框 */
}

::-webkit-scrollbar-thumb:hover {
    background-color: #ebebeb !important; /* 鼠标悬停时滑块颜色 */
}

::-webkit-scrollbar-corner {
    background: #f0f0f0 !important; /* 滚动条角落背景色 */
}


/* ===== 报表页全宽修复（仅作用于报表视图） ===== */
/* 统一报表页主要容器宽度，避免被默认 container 或 max-width 限制 */
.report-view .page-head,
.report-view .page-body,
.report-view .page-content,
.report-view .page-container,
.report-view .layout-main-section,
.report-view .container {
    width: 100% !important;
    max-width: none !important;
}

/* 移除 DataTable 包装层的左右内边距，避免视觉变窄，仅报表页生效 */
.report-view .datatable-wrapper {
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* 确保 DataTable 及其可滚动层占满宽度 */
.report-view .dt-scrollable,
.report-view .datatable {
    width: 100% !important;
    max-width: 100% !important;
}

/* 报表页表格线颜色略加深（仅作用于报表视图） */
.report-view .datatable .dt-cell,
.report-view .datatable .dt-row,
.report-view .datatable .dt-header .dt-cell {
    border-color: #cfd4da !important; /* 比默认更深一点 */
}

/* 兼容变量驱动的边框颜色（若 DataTable 使用 CSS 变量） */
.report-view {
    --border-color: #cfd4da;
}


/* ===== 列表视图表格线颜色略加深（仅作用于列表视图） ===== */
/* 兼容不同版本的列表视图容器命名（.list-view / .frappe-list） */
.list-view,
.frappe-list {
    --border-color: #cfd4da; /* 若列表行边框使用变量，则统一加深 */
}

/* 统一加深列表行与表头的边框颜色 */
.list-view .list-row,
.list-view .list-row-container,
.list-view .list-row-head,
.list-view .list-row-head .list-row-col,
.list-view .result .list-row,
.frappe-list .list-row,
.frappe-list .list-row-head,
.frappe-list .result .list-row {
    border-color: #cfd4da !important;
}

/* ===== 隐藏"通过以下方式获取更多洞察：Frappe Insights →"提示（主题内屏蔽） ===== */
/* 仅在常见页面容器内隐藏包含 Frappe Insights 的 CTA/提示链接，避免影响其他链接 */
.report-view a[href*="insights"],
.list-view a[href*="insights"],
.page-content a[href*="insights"],
.report-view a:contains("Frappe Insights"),
.page-content a:contains("Frappe Insights") {
    display: none !important;
}

/* 兼容可能的容器类名（不同版本/页面） */
.report-view .insights-cta,
.report-view .insights-banner,
.page-content .insights-cta,
.page-content .insights-banner,
.report-view .frappe-insights-cta,
.page-content .frappe-insights-cta {
    display: none !important;
}

/* 若提示文字与链接在同一父容器内，尝试整体隐藏该容器（尽量不扩大范围） */
.report-view .page-content .text-muted:has(a[href*="insights"]),
.page-content .text-muted:has(a[href*="insights"]),
.report-view .page-content p:has(a[href*="insights"]),
.page-content p:has(a[href*="insights"]) {
    display: none !important;
}

